home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Windows Expert
/
Windows Expert.iso
/
desktop
/
mwfish.zip
/
SOURCES.ZIP
/
WMAIN.DEF
< prev
next >
Wrap
Text File
|
1991-06-27
|
4KB
|
139 lines
DEFINITION MODULE WMain;
IMPORT Windows,ApplDlg,Str;
FROM Storage IMPORT ALLOCATE,DEALLOCATE;
FROM Lib IMPORT RANDOMIZE,RANDOM;
CONST
(* String table constants *)
IDSNAME = 100;
IDSABOUT = 200;
IDSTITLE = 300;
IDSMESSAGE = 400;
IDSCAPTION = 500;
IDSDEFSPEC = 501;
IDSDEFEXT = 502;
(* About Dialog box resource id *)
ABOUTBOX = 1;
FISHSELECT = 2;
LIFEDATABOX = 3;
FISHINFOBOX = 4;
(* Fish Select Box Controls *)
IDC_FILENAME = 400;
IDC_EDIT = 401;
IDC_FILES = 402;
IDC_PATH = 403;
IDC_LISTBOX = 404;
IDSAVERAGECHECK = 114;
IDSBACK = 119;
IDSCANCEL = 118;
IDSFASTCHECK = 115;
IDSFISHNAME = 108;
IDSGROUPBOX = 110;
IDSHOWMANY = 116;
IDSHOWMANYTEXT = 112;
IDSNEXT = 120;
IDSOK = 117;
IDSSELECTED = 109;
IDSSLOWCHECK = 113;
(* icon name *)
AQUAICON = 1;
SLOWSPEED = 2;
AVERAGESPEED = 4;
FASTSPEED = 6;
TYPE
NameType = ARRAY [0..15] OF CHAR;
InstancePtr = POINTER TO FishInstance;
FishInstance = RECORD
bmapno : CARDINAL;
direction : CARDINAL;
xpos : INTEGER;
ypos : INTEGER;
speedx : INTEGER;
speedy : INTEGER;
pspeedx : INTEGER;
pspeedy : INTEGER;
NextInstance : InstancePtr
END;
Fish = RECORD
name : NameType;
bmap : ARRAY[1..2],[1..4] OF Windows.HBITMAP;
bmapno : CARDINAL;
DialogFrame : CARDINAL;
status : BOOLEAN;
turnbmap : Windows.HBITMAP;
xpos : INTEGER;
ypos : INTEGER;
xextent : INTEGER;
yextent : INTEGER;
headwidth : INTEGER;
speedx : INTEGER;
speedy : INTEGER;
pspeedx : INTEGER;
pspeedy : INTEGER;
basespeed : INTEGER;
frequency : CARDINAL;
direction : CARDINAL;
TimerId : INTEGER;
Instances : CARDINAL;
Other : InstancePtr;
END;
VAR
szAppName: ARRAY [0..9] OF CHAR;
szAbout: ARRAY [0..9] OF CHAR;
szMessage: ARRAY [0..25] OF CHAR;
mycaption,mymessage : ARRAY [0..25] OF CHAR;
MessageLength: CARDINAL;
FileName,PathName,OpenName,DefPath : ARRAY[0..128] OF CHAR;
szDefSpec : ARRAY[0..13] OF CHAR;
szDefExt : ARRAY[0..5] OF CHAR;
FStr : ARRAY[0..255] OF CHAR;
szPath : ARRAY [0..127] OF CHAR;
szMask : ARRAY [0..127] OF CHAR;
hInst: Windows.HANDLE;
RealXYRect :Windows.RECT;
FishHead : ARRAY [0..10] OF Fish;
FishSelected,FishMax : INTEGER;
InstanceHead : InstancePtr;
(*# name(prefix=>windows) *)
(*# call(near_call=> off, reg_param=>()) *)
(*# save *)
(*# call(windows=>on) *)
PROCEDURE MainWndProc( hWindow : Windows.HWND;
message : CARDINAL;
wParam : CARDINAL;
lParam : LONGINT ) : LONGINT ;
(*# restore *)
PROCEDURE WinMain( hInstance : Windows.HANDLE;
hPrevInstance : Windows.HANDLE;
lpszCmdline : Windows.LPSTR;
cmdShow : INTEGER ) : Windows.BOOL ;
PROCEDURE StopAllTimers(hWnd : Windows.HWND);
PROCEDURE StartAllTimers(hWnd : Windows.HWND);
PROCEDURE QuickDeleteRgns(hWnd : Windows.HWND);
END WMain.